<?php

/*
	detail de la sortie
	
	auteur : zulad
	date : 16/06/2012

*/

// debug
//var_dump($_POST);
require_once (DIR_INCLUDE.'/sajax.inc.php');

function aValider($membreId, $sortieId)
{
    global $pdo;
    // si inscrit ou organisateur
    $val = $pdo->query('SELECT * FROM activite_sortie WHERE dateSortie < NOW() AND sortie_activite_id='.$sortieId);
    if($val->rowCount())
    {
        $val = $val->fetch();
        if($membreId == $val[membre_id] || strstr($val['membreInscrit'],$membreId))
        {
            if(strstr($val['membreValide'],$membreId))
                return false;
            else
                return true;
        }
    }
    return false;
}

function sendToGroup($type, $sujet, $message, $activiteId)
{
    global $pdo;
    
    // membre Attente
    $sql = 'SELECT membre_id FROM activite_attente WHERE activite_id='.$activiteId;
    $q = $pdo->query($sql);
    // membreInscrits
    $tmp = GetValueFromQuery('SELECT membreInscrit AS value FROM activite_sortie WHERE sortie_activite_id='.$activiteId);
    if(strstr($tmp,';'))
    {
        $membreInscrits = explode(';', $tmp );
    }
    
    switch($type)
    {
        case 1: // cas inscrits
            foreach($membreInscrits as $v)
            {
                if($v)
                sendMp($v,$sujet.(' - sortie:'.$activiteId),$message);
            }
            break;
        case 2: // cas attente
            if($q->rowCount())
            {
                foreach($q as $v)
                {
                    if($v['membre_id'])
                    sendMp($v['membre_id'],$sujet.(' - sortie:'.$activiteId),$message);
                }
            }
            break;
        case 3: // cas les deux
            if($q->rowCount())
            {
                foreach($q as $v)
                {
                    if($v['membre_id'])
                    sendMp($v['membre_id'],$sujet.(' - sortie:'.$activiteId),$message);
                }
            }
            foreach($membreInscrits as $v)
            {
                if($v)
                sendMp($v,$sujet.(' - sortie:'.$activiteId),$message);
            }
            break;
    }
    return null;
}

    sajax_init();
    //$sajax_debug_mode = 1;
    sajax_export("sendToGroup");
    sajax_handle_client_request();
    
$line = $pdo->query('SELECT * FROM activite_sortie WHERE dateSortie < NOW() AND sortie_activite_id='.$_GET['id'].';')->rowCount();
// todo : mail twice -> mp
// 
// sauvegarde
if($_POST)
{
       if($_POST['iCloture']=="1")
       {
           $membreAbsent = array();
           foreach($_POST as $k=>$v)
           {
                //echo $_POST[$k]." ".$k."/";
                $membreId = explode('_',$k); $membreId = $membreId[1];
               
                switch ($v)
                {
                    case 1:
                        $bonus = 'penaliteDesinscription';
                        break;
                   
                    case 2:
                        $bonus = 'penaliteEstExcuse';
                        break;
                    
                    case 3:
                        $bonus = 'penaliteNonExcuse';
                        break;
                }
                if($bonus && $membreId)
                {
                    $val = abs(GetValueFromQuery('SELECT '.$bonus.' as value FROM activite_sortie WHERE sortie_activite_id='.$_GET['id']));
                    $sql = 'UPDATE forum_membres SET membre_bonus = (membre_bonus - ' . $val . ') WHERE membre_id='.$membreId;
                    $pdo->query($sql);
                }
                
                array_push($membreAbsent,$membreId);
           }
           // cloture la sortie
           $pdo->query('UPDATE activite_sortie SET estCloture = 1 WHERE sortie_activite_id='.$_GET['id']);
           // mettre les absents dans membreAbsent
           $pdo->query('UPDATE activite_sortie SET membreAbsent = "'.(Array2string($membreAbsent)).'" WHERE sortie_activite_id='.$_GET['id']);
       }
       
       if($_POST['iValidation']=='1')
       // enregistrement validation
       {
            $membreValide = GetValueFromQuery('SELECT membreValide as value FROM activite_sortie WHERE sortie_activite_id='.$_POST['iActiviteId']);
            
            if($membreValide==null)
                $membreValide = array();
            else
                $membreValide = explode(';',$membreValide);
            
            array_push($membreValide,$_POST['iMembreId']);
            
            $pdo->query('UPDATE activite_sortie SET membreValide="'.Array2string($membreValide).'" WHERE sortie_activite_id='.$_POST['iActiviteId']);
       }
       
	if($_POST['headForm']=='fInscription')
	// ajout d'inscription
	{
        SetInscription('inscription',$_POST['iId'],$_POST['mId'],$_POST['totalAInscrire']);
	}

	if($_POST['headForm']=='fDesinscription')
	// retrait d'inscription
	{
        SetInscription('desinscription',$_POST['iId'],$_POST['mId']);
	}
	
	if(isset($_POST['formulaireComment']))
	// ajout de commentaires
	{
		$q = $pdo->prepare('INSERT INTO activite_commentaire SET membre_id=:membre_id, activite_id=:activite_id, commentaire=:commentaire, dateHeure=NOW();');
		$q->bindParam(":membre_id",$_POST['mId']);
		$q->bindParam(":activite_id",$_POST['aId']);
		$q->bindParam(":commentaire",$_POST['comment']);
		$q->execute();
                
        $mail = array(
            
            "sujet"=>"nouveau commentaire"
            ,"contenu"=>
                (
                
                        "Sortie : http://".SITE_URL.$_SERVER["REQUEST_URI"]."\r\n"
                        . "----------\r\n membre : "
                        . sex2color(id2sex($_POST['mId']),$_POST['mId']) 
                        . "\r\n commentaire : " . $_POST['comment'] 
                        . "\r\n----------")
        
                );
                
        $destinataire = GetValueFromQuery('SELECT membre_id as value FROM activite_sortie WHERE sortie_activite_id='.$_POST['aId']);
                
        send_email_to_membre($destinataire,$mail);
		envoitNewsAuxInscrits($_SESSION['id'], true, $_POST['aId']);
	}
	
	if(isset($_POST['actionComment']))
	// action sur commentaires
	{
		foreach($_POST as $k=>$v)
		{
			if(strstr($k,"del"))
			{
				$str = explode("_",$v);
				$pdo->query('DELETE FROM activite_commentaire WHERE activite_commentaire_id='.$str[1]);
			}
		}
	}
}

// init
$liste = $pdo->query("SELECT * FROM activite_sortie WHERE sortie_activite_id = ".$_GET['id']);
$result = $liste->fetch();

$tabAttente = GetTableauAttente($result['sortie_activite_id']);

$organisateur = $result['membre_id'];
$estInscrit = array_search($_SESSION['id'],($tab=explode(';',$result['membreInscrit'])));
$estAttente = array_search($_SESSION['id'],$tabAttente);
$estOrganistateur = false;


// on affiche la date de la sortie
$tmp = explode(" ",$result['dateSortie']);
$tmp = explode("-",$tmp[0]);
$timestamp = strtotime($tmp[0].'-'.$tmp[1].'-'.$tmp[2].' 23:59:59');

$jour = $jours[intval(date('w',$timestamp))]; 
    
// enlever telephone si 00 h 
if(time()>$timestamp)
{
    $pdo->query("UPDATE activite_sortie SET telephone='', dateSortie='".$result['dateSortie']."' WHERE sortie_activite_id=".$_GET['id']);
    $liste = $pdo->query("SELECT * FROM activite_sortie WHERE sortie_activite_id = ".$_GET['id']);
    $result = $liste->fetch();
}

//
$estInscrit = (is_numeric($estInscrit)?true:false);
$estAttente = (is_numeric($estAttente)?true:false);

if( $organisateur == $_SESSION['id'] )
{
	$estOrganisateur=true;
	$estInscrit=true;
        
        switch($_POST['nAction'])
        // suppression sortie
        {
            case 'delete':
                $pdo->query("DELETE FROM activite_sortie WHERE sortie_activite_id = ".$_GET['id']);
                $pdo->query("DELETE FROM activite_attente WHERE activite_id = " . $_GET['id']);
                redirect("Votre sortie est supprimée", 'activites-liste.sortie.html');
                break;
            
            case 'modifie':
                redirect("Vous allez modifier votre sortie", 'activites-creer.une.sortie.html?mId='.$_GET['id']);
                break;
        }
}

include "./modules/activites/detail/commentaire.php";

$_str = '<script>'
    		.sajax_get_javascript()
	.'</script>';

if($estOrganisateur)
{





 } 
 
 		// ici on affiche un texte en hut de la page pour le changer c'esty dans modules/message_haut.php
echo '' . detaille_une_sortie . '';

          include "./modules/activites/detail/bouton.php";
 
          include "./modules/activites/detail/consultation_sortie_haut.php";
 
          include "./modules/activites/detail/organisateur.php";
 
         include "./modules/activites/detail/adresse.php";
 
          include "./modules/activites/detail/liste_inscrit.php";
 
          include "./modules/activites/detail/liste_attente.php";
 
          include "./modules/activites/detail/inscription.php";
 

 




  
	// on affiche les commentaires
$_str .= GetComment($_GET['id']);

// javascript de fin de page pour faire des actions de dernieres minutes
$_str .= '<script>

	(function(){
		
		// chequer si utilisateur est deja inscrit à cette heure
		$.ajax({
		  type: "POST",
		  url: "controllerAjax.srv",
		  data: { qry: "100", requestHour: "'.$result['dateSortie'].'", requestId: "'.$_SESSION['id'].'" },
		  success : function( msg, data ) {
		  	$("#bandeauCommunication").html(msg);
		  	$("#bandeauCommunication").attr("style","color:#F00");
		  	},
		  error:function(jqXHR, textStatus) {
			  //alert( "Request failed: " + textStatus );
			}
		});
		
	})();

</script>';

// ici qd on est deconnecter il faut mettre cette phrase : Pour lire les commentaires ou en ajouter un, connecte-toi !
echo set_html_entities($_str); //Tu peux envoyer un message aux membres inscrits à ta sortie :

?>